-
Notifications
You must be signed in to change notification settings - Fork 13.7k
sycl: add CONCAT operator support #16047
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sycl: add CONCAT operator support #16047
Conversation
d889219 to
8d6da48
Compare
|
You're right, the branch was based on an outdated master. |
|
@ye-NX |
8d6da48 to
aad3d99
Compare
|
@NeoZhangJianyu Could you please take another look? |
NeoZhangJianyu
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The test-backend-ops.cpp has many change.
It will impact other backend.
Please only add new cases, instead of changing or deleting existed cases.
Thank you!
|
@ye-NX |
Yep. Looks like |
NeoZhangJianyu
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|
@CISC , @NeoZhangJianyu |
NeoZhangJianyu
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good job!
|
@ngxson |
|
@ngxson Please unblock. |

Title:
sycl: add CONCAT support for GGML_TYPE_I16 and GGML_TYPE_I32
Body:
This PR generalizes the SYCL backend CONCAT operator to support GGML_TYPE_I16 and GGML_TYPE_I32.
Refactors float-only kernels into templated kernels (T) for dim0/1/2 and the non-contiguous fallback.
Replaces /4 with elem_size(dst->type) to ensure correct indexing for all types.
Adds a type switch in ggml_sycl_op_concat to invoke concat_impl_sycl for F32, I16, and I32.
No API changes; no behavior changes for other backends.
Testing
Built with -DGGML_SYCL=ON and verified correctness for F32, I16, I32 across dim 0/1/2/3 with both contiguous and non-contiguous inputs.
test-backend-ops passes for CONCAT.